import request from '@/utils/request'

// 查询部门列表
export function listDept (query) {
  return request({
    url: '/tree/all',
    method: 'GET',
    params: query
  })
}

// 查询部门列表（排除节点）
export function listDeptExcludeChild (deptId) {
  return request({
    url: '/system/dept/list/exclude/' + deptId,
    method: 'GET'
  })
}

// 查询部门下拉树结构
export function treeselect () {
  return request({
    url: '/system/dept/treeselect',
    method: 'GET'
  })
}

// 根据角色ID查询部门树结构
export function roleDeptTreeselect (roleId) {
  return request({
    url: '/system/dept/roleDeptTreeselect/' + roleId,
    method: 'GET'
  })
}

// 查询部门详细
export function getDept (deptId) {
  return request({
    url: '/system/dept/' + deptId,
    method: 'GET'
  })
}

// 新增部门
export function addDept (data) {
  return request({
    url: '/system/dept',
    method: 'POST',
    data: data
  })
}

// 修改部门
export function updateDept (data) {
  return request({
    url: '/system/dept',
    method: 'PUT',
    data: data
  })
}

// 删除部门
export function delDept (deptId) {
  return request({
    url: '/system/dept/' + deptId,
    method: 'DELETE'
  })
}
// 获取节点类型列表
export function nodeTypeList () {
  return request({
    url: '/system/dict/data/type/sys_dept_type',
    method: 'GET'
  })
}
// 获取标段类型列表
export function sectionTypeList () {
  return request({
    url: '/system/dict/data/type/sys_dept_attr_section_type',
    method: 'GET'
  })
}
// 获取工程类型列表
export function constructionTypeList () {
  return request({
    url: '/system/dict/data/type/sys_dept_attr_construction_type',
    method: 'GET'
  })
}
// 获取工点类型列表
export function pointTypeList () {
  return request({
    url: '/system/dict/data/type/sys_dept_attr_point_type',
    method: 'GET'
  })
}
